本文讲下git的工作流程。

这里我们常用的分支有:

主分支(master branch)
开发分支(develop branch)
功能分支(feature branch)
补丁分支(hotfix branch)
预发分支(release branch)

流程一(基础)

几个小伙伴开发一套系统,使用git对项目的代码进行版本控制,这是一种比较方便易于理解的方式。

情景

发布和测试部署

master分支同时是开发服务器和测试服务器本地的当前分支。

开发新功能

在master分支上进行切feature分支,开发完之后对其部署在测试服务器上进行测试,测试没有bug即合并进master分支,此时测试服务器的版本是领先于生产服务器的,

出现bug

在master分支上切出来一个hotfix分支来改bug,然后生产服务器本地当前分支回滚一个版本。
静静的等待bug改好了进行单元测试,有时间的条件下还要回归测试下。然后master合并这个hotfix分支。

细心地同学应该发现开发分支(develop branch)和预发分支(release branch)没有用到,对不对?如果我们只是做一个不需要上线,或者小众的这样一个应用,简单易于操作的git flow是很适合的,但当我们的开发协作扩展至一个5人以上的团队,当版本控制追求版本有层次,提交合并有权限,各分支功能单一等等一些特性的时候,那么就应该升级git flow

流程二(进阶)

详见下一篇。


mar11
209 声望19 粉丝

随我阅尽繁华 归来不忘初心